/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.model;

import com.db.SqlManager;
import com.exception.DataException;
import com.javabeans.DetalleEstudiante;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

/**
 *
 * @author Administrador
 */
public class AdminDetalleEstudiante  implements DetalleEstudianteManager{
    private Connection c;
    public AdminDetalleEstudiante(Connection c){
        this.c = c;
    }
    @Override
    public void saveDetalleEstudiante(DetalleEstudiante de) throws DataException {
        PreparedStatement preSt = null;
        String query;
        try{
            query ="INSERT INTO DETALLE_ESTUDIANTE VALUES("+de.getIdDetalleEstudiante();
            query+= ", "+de.getIdPaisActual();
            query+= ", "+de.getIdCiudadActual();
            query+= ", "+de.getIdProvinciaActual();
            query+= ", '"+de.getLocalidadActual().toUpperCase();
            query+= "', '"+de.getCantonActual().toUpperCase();
            query+= "', "+de.getIdPaisNac();
            query+= ", "+de.getIdCiudadNac();
            query+= ", "+de.getIdProvinciaNac();
            query+= ", '"+de.getLocalidadNac().toUpperCase();
            query+= "', '"+de.getCantonNac().toUpperCase()+"')";            
            preSt = c.prepareStatement(query);
            preSt.executeUpdate();
        }catch(SQLException ex){
            throw new DataException(" AdminDetalleEstudiante -> saveDetalleEstudiante(DetalleEstudiante de) "+ex.getMessage());
        }finally{
            SqlManager.closePreSt(preSt);
        }
    }

    public void updateDetalleEstudiante(DetalleEstudiante de) throws DataException {
        PreparedStatement preSt = null;
        try{
            String query = "UPDATE DETALLE_ESTUDIANTE SET IDPAIS_ACTUAL = "+de.getIdPaisActual();
            query+= ", IDCIUDAD_ACTUAL = "+de.getIdCiudadActual();
            query+= ", IDPROVINCIA_ACTUAL = "+de.getIdProvinciaActual();
            query+= ", LOCALIDAD_ACTUAL = '"+de.getLocalidadActual().toUpperCase();
            query+= "', CANTON_ACTUAL = '"+de.getCantonActual().toUpperCase();
            query+= "', IDPAIS_NAC = "+de.getIdPaisNac();
            query+= ", IDCIUDAD_NAC = "+de.getIdCiudadNac();
            query+= ", IDPROVINCIA_NAC = "+de.getIdProvinciaNac();
            query+= ", LOCALIDAD_NAC = '"+de.getLocalidadNac().toUpperCase();
            query+= "', CANTON_NAC = '"+de.getCantonNac().toUpperCase();
            query+= "' WHERE IDDETALLE_ESTUDIANTE="+de.getIdDetalleEstudiante();            
            preSt = c.prepareStatement(query);
            preSt.executeUpdate();
        }catch(SQLException ex){
            throw new DataException(" AdminDetalleEstudiante -> updateDetalleEstudiante(DetalleEstudiante de) e = "+ex.getMessage());
        }finally{
            SqlManager.closePreSt(preSt);
        }
    }
    
}
